<!DOCTYPE html>
<html lang="cs">
  <head>
    <meta charset="utf-8">
    <title>sCanvas – JavaScriptová knihovna pro vykreslování na HTML5 Canvas</title>
    <!-- Mobile viewport optimized -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

    <!-- Le styles -->
    <link href="css/bootstrap.css" rel="stylesheet">
    <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/themes/black-tie/jquery-ui.css" rel="stylesheet">
    <link href="css/jquery.tocify.css" rel="stylesheet">
    <link href="css/prettify.css" type="text/css" rel="stylesheet" />
    <link href="css/styles.css" type="text/css" rel="stylesheet" />

    <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

    <style>

@media (max-width: 767px) {
    #toc {
        position: relative;
        width: 100%;
        margin: 0px 0px 20px 0px;
    }
}
    </style>
  </head>

  <body>
    <div class="navbar navbar-fixed-top">
      <div class="navbar-inner">
        <div class="container-fluid">
          <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </a>
          <a class="brand" href="#">sCanvas</a>

          <div class="nav-collapse">
            <ul class="nav">
              <li><a href="index.html">Úvod</a></li>
              <li class="active"><a href="core.html">Jádro</a></li>
              <li><a href="objects.html">Objekty</a></li>
              <li><a href="animations.html">Animace</a></li>
              <li><a href="events.html">Události</a></li>
              <li><a href="groups.html">Skupiny</a></li>
            </ul>
          </div><!--/.nav-collapse -->
        </div>
      </div>
    </div>

    <div class="container-fluid">
      <div class="row-fluid">
        <div class="span3 tocify">
          <div id="toc">
          </div><!--/.well -->
        </div><!--/span-->
        <div class="span9">
          <div class="hero-unit">
            <h1>sCanvas – Jádro</h1>
          </div>
		<h2>Prototyp objektu sCanvas</h2>
		<div class="method well">
			<h3>Konstruktor</h3>
			<div class="syntax">
				<strong>new sCanvas(selektor [, ready [, error ]])</strong>
				<div>
					<span>selektor – string, HTMLElement</span>
					<p>Buď ID elementu, který obaluje canvas, nebo přímo tento element.</p>
				</div>
				<div>
					<span>ready – function()</span>
					<p>Funkce vykonaná při úspěšné inicializaci.</p>
				</div>
				<div>
					<span>error – function()</span>
					<p>Funkce vykonaná pokud při inicializaci nastala chyba.</p>
				</div>
			</div>
			<p>Vytváří novou instanci objektu sCanvas. Pokud jsou specifikovány nepovinné funkce, výsledek je totožný, jako by byly předány metodám <code>ready()</code> či <code>error()</code>.</p>
          <pre class="prettyprint">new sCanvas("canvas", function() {
  //kod vykonany po nacteni canvasu
}, function() {
  //kod vykonany pri chybe
  //napr. prohlizec canvas nepodporuje nebo objekt s danym id nebyl nalezen
});</pre>
		</div>
			
		<div class="method well">
			<h3>this.error()</h3>
			<div class="syntax">
				<strong>this.error(fn)</strong>
				<div>
					<span>fn – function()</span>
					<p>Funkce vykonaná při události <code>error</code>.</p>
				</div>
			</div>
			<p>Naváže na událost <code>error</code> funkci, která bude vykonána při jejím vyvolání.</p>
			<p>Pokud již událost <code>error</code> nastala, je funkce vykonána okamžitě.</p>
			<p>Událost error může vzniknout při inicializaci canvasu, pokud dojde k nějaké chybě, například prohlížeč nepodporuje canvas, nebo pomocí předaného selektoru nebyl canvas nalezen.</p>
		</div>
			
		<div class="method well">
			<h3>this.get()</h3>
			<div class="syntax">
				<strong>this.get(id)</strong>
				<div>
					<span>id – string</span>
					<p>ID hledaného objektu.</p>
				</div>
			</div>
			<p>Vrací objekt s daným ID. Pokud takový objekt neexistuje, vrátí null-objekt.</p>
		</div>
			
		<div class="method well">
			<h3>this.height()</h3>
			<div class="syntax">
				<strong>this.height([ výška ])</strong>
				<div>
					<span>výška – number</span>
					<p>Definuje výšku canvasu.</p>
				</div>
			</div>
			<p>Je-li metodě předán argument, je výška canvasu nastavena na předanou hodnotu.</p>
			<p>Bez argumentu metoda vrací aktuální výšku canvasu.</p>
		</div>
		  
		<div class="method well">
			<h3>this.isAutorepainting()</h3>
			<div class="syntax">
				<strong>this.isAutorepainting()</strong>
			</div>
			<p>Vrací <code>true</code> pokud je zapnuto automatické překreslování canvasu.</p>
		</div>
		  
		<div class="method well">
			<h3>this.position()</h3>
			<div class="syntax">
				<strong>this.position()</strong>
			</div>
			<p>Vrací offset elementu <code>canvas</code> a zároveň ho ukládá do vnitřní proměnné, kterou sCanvas využívá k určení souřadnic při událostech.</p>
			<p>Tato metoda by mělo být volána vždy při manipulaci s DOM dokumentu.</p>
		</div>
		  
		<div class="method well">
			<h3>this.ready()</h3>
			<div class="syntax">
				<strong>this.ready(fn)</strong>
				<div>
					<span>fn – function()</span>
					<p>Funkce vykonaná při události <code>ready</code>.</p>
				</div>
			</div>
			<p>Naváže na událost <code>ready</code> funkci, která bude vykonána při jejím vyvolání.</p>
			<p>Pokud již událost <code>ready</code> nastala, je funkce vykonána okamžitě.</p>
			<p>Veškerý výkonný kód by měl být vždy umístěn uvnitř předávané funkce, aby se předešlo problémů při vykonávání kódu na <code>canvas</code>, který ještě nebyl zcela inicializován.</p>
		</div>
		  
		<div class="method well">
			<h3>this.repaint()</h3>
			<div class="syntax">
				<strong>this.repaint()</strong>
			</div>
			<p>Překreslí canvas.</p>
		</div>
		  
		<div class="method well">
			<h3>this.startAutorepainting()</h3>
			<div class="syntax">
				<strong>this.startAutorepainting([ překreslit ])</strong>
				<div>
					<span>překreslit – boolean</span>
					<p>Určuje, zda má být canvas překreslen.</p>
				</div>
			</div>
			<p>Zapíná automatické překreslování canvasu.</p>
			<p>Je-li automatické překreslování zapnuto, canvas je překreslen pokaždé, když dojde k operaci, která může ovlivnit jeho obsah, například při změně atributu objektu, při přidání/odebrání objektu canvasu atd.</p>
			<p>Je-li nepovinný argument nastaven na <code>true</code>, je zároveň s voláním této metody canvas překreslen.</p>
		</div>
		  
		<div class="method well">
			<h3>this.stopAutorepainting()</h3>
			<div class="syntax">
				<strong>this.stopAutorepainting()</strong>
			</div>
			<p>Vypíná automatické překreslování canvasu.</p>
		</div>
		  
		<div class="method well">
			<h3>this.width()</h3>
			<div class="syntax">
				<strong>this.width([ šířka ])</strong>
				<div>
					<span>šířka – number</span>
					<p>Definuje šířku canvasu.</p>
				</div>
			</div>
			<p>Je-li metodě předán argument, je šířka canvasu nastavena na předanou hodnotu.</p>
			<p>Bez argumentu metoda vrací aktuální šířku canvasu.</p>
		</div>
		
		<h2>Objekt sCanvas</h2>
		<div class="method well">
			<h3>sCanvas.extend()</h3>
			<div class="syntax">
				<strong>sCanvas.extend([ rekurzivně ], cíl [, objekt1 [, ... [, objektN ]]])</strong>
				<div>
					<span>rekurzivně – boolean</span>
					<p>Pokud je nastaven na <code>true</code>, jsou objekty kopírovány rekurzivně (na kopírovaný objekt je znovu volána tato metoda).</p>
				</div>
				<div>
					<span>cíl – object</span>
					<p>Objekt, do kterého budou kopírovány další objekty.</p>
				</div>
				<div>
					<span>objekt1,  ..., objektN – object</span>
					<p>Objekty kopírované do cíle.</p>
				</div>
			</div>
			<p>Kopíruje vlastnosti předaných objektů do prvního. Je-li první argument nastaven na <code>true</code>, je kopírování provedeno rekurzivně.</p>
			<p>Je-li předán pouze jeden objekt, je rozšířen samotný objekt <code>sCanvas</code>.</p>
		</div>
		  
		<div class="method well">
			<h3>sCanvas.Event()</h3>
			<div class="syntax">
				<strong>sCanvas.Event(typ [, data ])</strong>
				<div>
					<span>typ – string</span>
					<p>Specifikuje typ události.</p>
				</div>
				<div>
					<span>data – object</span>
					<p>Přidá na objekt události předané vlastsnosti.</p>
				</div>
			</div>
			<p>Vytváří objekt události. Ten pak může být předán metodě <code>trigger()</code> pro vyvolání určitého typu události.</p>
		</div>
		  
		<div class="method well">
			<h3>sCanvas.isArray()</h3>
			<div class="syntax">
				<strong>sCanvas.isArray(objekt)</strong>
				<div>
					<span>objekt – object</span>
					<p>Objekt, u kterého má být ověřeno, zda se jedná o pole.</p>
				</div>
			</div>
			<p>Vrací <code>true</code>, pokud je předaný objekt pole.</p>
		</div>
		  
		<div class="method well">
			<h3>sCanvas.isEmpty()</h3>
			<div class="syntax">
				<strong>sCanvas.isEmpty(objekt)</strong>
				<div>
					<span>objekt – object</span>
					<p>Objekt, u kterého má být ověřeno, zda je prázdný.</p>
				</div>
			</div>
			<p>Vrací <code>true</code>, pokud je předaný objekt plain objekt neobsahující žádné vlastnosti, nebo pokud je objekt pole bez prvků.</p>
		</div>
		  
		<div class="method well">
			<h3>sCanvas.isGroup()</h3>
			<div class="syntax">
				<strong>sCanvas.isGroup(objekt)</strong>
				<div>
					<span>objekt – object</span>
					<p>Objekt, u kterého má být ověřeno, zda je CanvasGroup.</p>
				</div>
			</div>
			<p>Vrací <code>true</code>, pokud je předaný objekt typu CanvasGroup.</p>
		</div>
		  
		<div class="method well">
			<h3>sCanvas.isValidId()</h3>
			<div class="syntax">
				<strong>sCanvas.isValidId(id)</strong>
				<div>
					<span>id – string</span>
					<p>Řetězec, u kterého má být ověřeno, zda se jedná o validní ID.</p>
				</div>
			</div>
			<p>Vrací <code>true</code>, pokud je předaný řetězec validní pro použití jako ID objektu.</p>
		</div>
		  
		<div class="method well">
			<h3>sCanvas.now()</h3>
			<div class="syntax">
				<strong>sCanvas.now()</strong>
			</div>
			<p>Vrací počet milisekund uplynulý od 1. ledna 1970 00:00.</p>
		</div>
		  
      </div><!--/row-->
	  
      <div class="navbar" style="margin:0 auto;width:45%;">
        <p>
            Copyright &copy; 2013 Daniel Bielczyk
        </p>
      </div>
    </div><!--/.fluid-container-->
  </div>
    <!-- Le javascript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="js/jquery.min.js"></script>
    <script src="js/jquery-ui.custom.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/history.js"></script>
    <script src="js/jquery.tocify.min.js"></script>
    <script src="js/prettify.js"></script>
    <script src="js/githubrepo.js"></script>
    <script>
        $(function() {

            $("#toc").tocify({ selectors: "h2, h3, h4", scrollTo: 60, highlightOffset: 60, extendPage: true });

            prettyPrint();

            $(".optionName").popover({ trigger: "hover" });

            $("a[href='#']").click(function(event) {
 
                event.preventDefault();

            });

        });
    </script>
  </body>
</html>